1. Field
The present disclosure pertains to the field of information processing, and more particularly, to the field of error detection and correction in information processing systems.
2. Description of Related Art
Faults or errors may occur in information processing systems for a variety of reasons. Dynamic variations such as voltage droop, static variations such as transistor device threshold voltage variations, critical path violations due to aging, circuit marginalities, alpha particle and high-energy neutron strikes, and many other factors may alone or in combination result in or contribute to errors.
One example of such errors is the phenomenon of soft errors, which arise when alpha particles and high-energy neutrons strike integrated circuits and alter the charges stored on the circuit nodes. If the charge alteration is sufficiently large, the voltage on a node may be changed from a level that represents one logic state to a level that represents a different logic state, in which case the information stored on that node becomes corrupted. Generally, soft error rates increase as the level of integration increases, because the likelihood that a striking particle will hit a voltage node in a die increases when more circuitry is integrated into a single die. Likewise, as operating voltages decrease, the difference between the voltage levels that represent different logic states decreases, so less energy is needed to alter the logic states on circuit nodes and more soft errors arise. Therefore, as improvements in integrated circuit manufacturing technologies continue to provide for greater levels of integration and lower operating voltages in microprocessors and other information processing apparatuses, error detection and correction becomes increasingly important.
One approach to detecting and sometimes correcting errors, including soft errors, is to add storage elements for parity or error-correcting-code (ECC) values to information storage structures. However, the addition of these storage elements increases the size of the storage structure, and the increase in size is typically proportional to the level of detection/correction provided.